1. Field of the Invention
The present invention relates to an apparatus and a method of video signal processing for performing gamma correction or degamma correction on a video signal. The present invention also relates to a display apparatus that performs gamma correction appropriate for the display employed for the apparatus when the gamma characteristic of the display employed differs from the characteristic of the gamma correction performed on the video signal that is inputted into the display apparatus. Specifically, the present invention relates to a display apparatus, such as a cathode-ray tube display, a liquid crystal display apparatus, and a plasma display panel, and to an apparatus and a method of video signal processing for achieving favorable gradation and contrast for the image displayed by the display apparatus.
2. Description of Related Art
The display apparatuses that display video signals, such as liquid crystal displays, plasma displays, and cathode-ray tube (CRT) displays have different gamma characteristics respectively. The television broadcasting signals, however, have a gamma characteristic that is adequate for CRT displays. Accordingly, when the signals are used for displaying on liquid crystal display apparatuses and plasma display apparatuses, the gamma correction having been applied to the video signals on the signal transmitter side has to be removed, and then gamma correction adequate for the display apparatuses that are used has to be applied to the video signal. For this reason, when video output corresponding to plural types of displays is performed, on the signal receiver side, it is necessary to employ gamma correction adequate for each type of displays.
Incidentally, corrections that are similar to gamma correction are performed for the purpose of setting contrast, and adjusting image quality, brightness, and black-and-white level or the like. Recent years, the amount of software processing has increased. The increase has in turn provoked an increased demand for a circuit design that is capable of achieving a smoother correction curve, which is capable of achieving a clearer and natural image by means of a small-scale circuit and with a smaller amount of software processing. Meeting such a demand requires highly sophisticated technologies.
In a video signal processing system as a related art, for the purpose of making the video signal adequate for the display apparatus, such as a liquid crystal display, a plasma display, and a cathode-ray tube (CRT) display, which displays the video signal, a gamma correction apparatus that is capable of handling plural display apparatuses at one time has been provided thus far. The provided apparatus, however, has a problem of its incapability of approximating accurately the gamma characteristic curve, or of requiring a very large-scale circuit for approximating accurately the gamma characteristic curve. A related technique to address this problem is disclosed in Patent Document 1.
FIG. 13 is a block diagram for showing a degamma correction apparatus of a related example disclosed in Patent Document 1. As FIG. 13 shows, a degamma correction apparatus 111 includes a sample data register 121, a sample data selection circuit 122, a kernel coefficient memory 123, a coefficient selection circuit 124, and an interpolation computation circuit 125.
Video signals are inputted through an input terminal 131 for video data (6 bit) before correction into both the coefficient selection circuit 124 and sample data selection circuit 122. The coefficient selection circuit 124 is bi-directionally connected to the kernel coefficient memory 123. Coefficient selection signals and coefficient value signals are transferred between the coefficient selection circuit 124 and the kernel coefficient memory 123. Into the kernel coefficient memory 123, coefficient memory write signals are inputted through a terminal 134 for coefficient group. The sample data selection circuit 122 is bi-directionally connected to the sample data register 121. Sample data selection signals and sample data signals are transferred between the sample data selection circuit 122 and the sample data register 121. Into the sample data register 121, sample data register write signals are inputted through a terminal 132 for gamma characteristic selection. Both the output of the coefficient selection circuit 124 and the output of the sample data selection circuit 122 become the input of the interpolation computation circuit 125. The output of the interpolation computation circuit 125 is connected to an output terminal 133 for video signal after correction. What has just been described is how the degamma correction apparatus 111 is configured.
The degamma correction apparatus 111 has such a function as follows. When the number of bits of the video signal inputted into the degamma correction apparatus 111 is m (m is a natural number), the degamma correction apparatus 111 supplies, among the m bits, the higher-order p bits (p is a natural number and p<m) to the sample data selection circuit 22 and supplies q bits among the m bits (p+q=m) to the coefficient selection circuit 24.
Next, descriptions of the operation for the gamma correction processing will be given with reference to FIGS. 13 to 15. FIG. 14 is an explanatory chart of sample data set in a degamma correction apparatus of a related example. FIG. 15 is a chart for showing coefficients stored in the kernel coefficient memory 123 of the degamma correction apparatus of the related example. In the degamma correction apparatus 111 shown in FIG. 13, equidistant division is performed on the signal level, between the maximum to the minimum, of the video signal inputted through the terminal 131 for the video signal before correction. Then, plural sample points are set in the sample data selection circuit 122 and in the sample data register 121. The sample point refers to a data that is compared with the input value produced by the equidistant division of the video signal level inputted into the sample data selection circuit 122, or refers to the data to be corrected on the input value. Suppose that the sample point is x coordinate in FIG. 14 representing the signal level of the input video signal and that the sample data is y coordinate in FIG. 14 representing the signal level of the output video signal. In this case, the relationship between the sample point and the sample data is expressed by the following formula 1.(x, y)=(sample point, sample data)  (1)
The related degamma correction apparatus 111 is characterized by its employing the cubic interpolation computation to connect sample data as a smooth curve. Accordingly, next, descriptions of the cubic interpolation computation will be given in detail.
The cubic interpolation computation is an interpolation algorithm by use of a third-order polynomial. The kernel function h(x) of the cubic interpolation computation is expressed by the formula (2) given below. FIG. 15 is a graph of a case where a=−0.5 in the formula (2). In the formula, a is a variable for controlling the property of the interpolation function, and usually takes a value ranging from −0.5 to −2, approximately.
                    [                  Numerical          ⁢                                          ⁢          Expression          ⁢                                          ⁢          1                ]                                                                      h          ⁡                      (            s            )                          =                  {                                                                                                                (                                              a                        +                        2                                            )                                        ⁢                                                                                          x                                                                    3                                                        -                                                            (                                              a                        +                        3                                            )                                        ⁢                                                                                          x                                                                    2                                                        +                  1                                                                              0                  ≤                                                          x                                                        <                  1                                                                                                                          a                    ⁢                                                                                          x                                                                    3                                                        -                                      5                    ⁢                    a                    ⁢                                                                                          x                                                                    2                                                        +                                      8                    ⁢                    a                    ⁢                                                                x                                                                              -                                      4                    ⁢                    a                                                                                                1                  ≤                                                          x                                                        <                  2                                                                                    0                                                              2                  ≤                                                          x                                                                                                                              (        2        )            
With reference to FIGS. 14 and 15, descriptions will be given as to the processing for obtaining, by use of the cubic interpolation computation, the signal level of the output video signal after the degamma correction for the signal level of the input video signal. FIG. 14 shows sample data set in the degamma correction apparatus at the time when the signal level of the output video signal (point indicated by ● on the degamma correction curve) is interpolated at point A of the signal level of the input video signal. With respect to the signal level of the input video signal on the horizontal axis, sample points are set by dividing equidistantly the signal level ranging from the minimum to the maximum. Here, four sample points (four points C−2, C−1, C1, and C2 indicated by 0 circled by dashed lines in FIG. 14) that are adjacent, from the two sides, to point A to be interpolated are extracted as the sample data. As to the value x in the formula (2) given above (hereafter, referred to as distance x), the difference in level among the adjacent sample points is equivalent to a distance “1.” To put it differently, the distance x is obtained by dividing the difference in level from the signal level of the input video signal to the above-mentioned four sample points by the difference in level among the adjacent sample points.
Here, weighting coefficients for the four sample data (shown as h−2, h−1, h1, and h2 in FIG. 15) are obtained by substituting the calculated distance x into the formula (2).
The weighting coefficient is a commonly-used term in the interpolation computation and the like, and refers to the value obtained by dividing the weighted average by the total number of the weights. As shown in the following formula (3), the four sample data are multiplied by their respective weighting coefficients and then the total sum y of the products of the multiplications is obtained.y=h−2·C−2+h−1·C−1+h1·C1+h2·C2  (3)
The total sum y obtained by the formula (3) is the degamma-corrected video signal level at point A. The sample data needed for the interpolation processing include one data for each of the four ranges of distance x: −2≦x<−1; −1≦x<0; 0≦x<1, 1≦x<2. The value of the coefficient is obtained by means of the values of kernel coefficients (value of coefficient (h)) of (h−2, h−1, h1, and h2) shown in FIG. 15 corresponding respectively to the selected sample data.
Accordingly, in the degamma correction apparatus 111 of the related technique shown in FIG. 13, the video signals inputted through the input terminal 131 for video signal before correction is inputted into the coefficient selection circuit 124 and the sample data selection circuit 122. The kernel coefficient value obtained by the coefficient selection circuit 124 and the sample data selected by the sample data selection circuit 122 are used for performing the cubic interpolation computation expressed by the above-mentioned formula (3) in the interpolation computation circuit 125. Then, the video data after correction is outputted through the output terminal
[Patent Document 1] Japanese Patent Application Publication No. 2004-140702
The related degamma correction apparatus 111, however, performs the cubic interpolation computation, so that the setting of sample points has to be done only equidistantly. For this reason, in the related degamma correction apparatus 111, it is necessary to limit the sample points for gamma correction to equidistant setting. Accordingly, gamma correction is not possible by setting sample points with different distance from one another. This is a problem that the related degamma correction apparatus 111 has.
Remember that, in gamma correction, a correction curve with a steep slope has a large variation. Accordingly, accurate approximation in this case requires smaller intervals for the sampling and more number of sample points than in the case of a small slope. In the related technique, however, the intervals for the sampling are constant. Accordingly, when the sampling intervals are set for a correction curve having both sections with a steep slope and with a small slope, the setting of the sampling intervals that is adequate for the steep-slope section causes the setting of redundant sample points in the small-slope section. The redundancy in turn results in the increase in the software processing and the number of setting operations for setting the sample points. Conversely, the setting of the sampling intervals that is adequate for the small-slope section results in an insufficient number of sample points for the steep-slope section. The insufficiency in turn results in a problem. Specifically, accurate approximation is impossible.
Descriptions of this problem will be given with reference to FIG. 16 to 18. FIG. 16 is a chart showing a correction curve composed of sections with different slopes. FIG. 17 is a chart showing an example of setting the sampling intervals so as to be adequate for a steep slope. FIG. 18 is a chart showing an example of setting the sampling intervals so as to be adequate for a small slope.
In a case as shown in FIG. 16 where the correction curve has sections having a steep slope and requiring high accuracy as well as sections having a small slope and not requiring very high accuracy, the sampling intervals for the steep-slope sections have to be set finely for the purpose of interpolating the curve with high accuracy. Conversely, the sampling intervals for the small-slope sections, which have a small variation and do not require high accuracy, do not have to be set finely. Even when the sampling intervals are set coarsely, approximating the curve is still possible.
In the related technique, however, plural sample points are set by dividing the range of the signal level, from the minimum to the maximum, of the input video signal equidistantly, and then the cubic interpolation computation is performed using the sample data corresponding to the respective sample points. For this reason, setting of sampling intervals that depends on the slope is not possible. Accordingly, approximating a correction curve as shown in FIG. 16 causes a problem as described above. Specifically, the problem is the creation of redundant sample points or the shortage of sufficient number of sample points.
To be more specific, when the sampling intervals are set for the purpose of approximating the section which has a steep slope and which requires high accuracy in FIG. 16, the sampling has to be done equidistantly with fine sampling intervals as shown in FIG. 17. Redundant sample points are created, however, in the section which has a small slope and which do not require high accuracy. The redundancy in turn provokes an increase both in the amount of software processing and in the number of setting operation for setting the sample data. Conversely, when the sampling intervals are set equidistantly and coarsely as shown in FIG. 18 so as to be appropriate for the section which has a small slope and which do not require high accuracy, for the purpose to reduce the sample points, sample points needed for approximating the curve in the section which has a steep slope and which requires high accuracy are not provided sufficiently. The insufficiency in turn makes accurate approximation of the curve impossible.